Programming environments are the environments in which computer programs are developed and executed. Different types of environments provide for different advantages and disadvantages in the development of bug-free computer programs. As computer programs have become increasingly complex, programming environments have been examined as a factor that may strongly affect the length of time it takes to create computer programs, and the number of bugs that may be within such programs as they are executed in conjunction with other computer programs.
In perhaps the most traditional type of programming environment, computer programs are written in a procedural manner. That is, generally speaking, a first line of code of the program is executed, followed by a second line, etc., until the program is finished. However, this type of programming environment does not usually lend itself well to the development of highly complex computer programs that must run concurrently with other programs. Such development, for example, may be performed by a relatively large team of programmers, such that each programmer must typically be aware of the manner by which the other programmers are developing their part of the computer program for the computer program to run efficiently and bug-free. This is generally difficult to accomplish in this type of programming environment.
Another programming environment is the message-driven environment, at least partially implemented and popularized by modern operating systems such as current versions of the MICROSOFT WINDOWS operating system. In such environments, different objects interface with other objects via messages, and execution of the procedures are initiated by events. However, these messages are complex structures, such that the context must be unpacked from messages prior to the execution of an action. This fragility may render development of computer programs potentially more difficult and bug-laden than is desired. For these and other reasons, there is a need for the present invention.